package com.miyake.dsp;

import com.miyake.dsp.circuit.RcSetting;
import com.miyake.dsp.converter.AmplifierSetting;
import com.miyake.dsp.converter.DigitizerSetting;
import com.miyake.dsp.converter.MovingAverageSetting;
import com.miyake.dsp.converter.OffsetSetting;
import com.miyake.dsp.convolution.ConvolutionSetting;
import com.miyake.dsp.filter.Filter;
import com.miyake.dsp.filter.FilterSetting;

public interface ProcessorFactory {
	void setSamplingFrequency(double frequency);
	Filter createFilter(FilterSetting setting);
	Processor createDiff();
	Processor createFFT();
	Processor createConvolution(ConvolutionSetting setting);
	Processor createAbsolute();
	Processor createOffset(OffsetSetting setting);
	Processor createRc(RcSetting setting);
	Processor createMovingAverage(MovingAverageSetting setting);
	Processor createAmplifier(AmplifierSetting setting);
}
